
#include "SphereRepulsorModifier.h"


SphereRepulsorModifier::SphereRepulsorModifier(Vector2D position, float radius) :
    position(position), radius(radius) {

}


SphereRepulsorModifier::~SphereRepulsorModifier(){

}


void SphereRepulsorModifier::modifyParticle(Particle &particle){
    Vector2D vec = particle.position - position;
    if(vec.length() < radius){
        vec.normalise();
        particle.position = position + radius*vec;
    }
}


void SphereRepulsorModifier::setPosition(Vector2D new_position){
    position = new_position;
}


void SphereRepulsorModifier::setRadius(float new_radius){
    radius = new_radius;
}

